//==============================================================================
#ifndef _SCENEEDITORWINDOW_H_
#define _SCENEEDITORWINDOW_H_

#pragma once
#include "ui\Window.h"
#include "ui\Button.h"
#include "ui\ListBox.h"
#include "ui\TextBox.h"
#include "ui\ComponentList.h"
#include "ui\SceneObject.h"
#include "ui\Scene.h"
#include "persistence\SceneRepository.h"
#include "persistence\PersistenceException.h"
#include "ErrorMessageWindow.h"
#include <sstream>
//==============================================================================

using namespace ui;

class SceneEditorWindow : public Window
{
public:
	SceneEditorWindow(int width, int height);
	SceneEditorWindow(string sceneName);
	~SceneEditorWindow(void);
	void setSceneName(string sceneName);
	string getSceneName(void);
	int execute(void);
private:
	void initialize(void);
	void eventHandler(SDL_Event* event);
	void cleanUp(void);
	void renderize(void);
	COMPONENT_TYPE handleEvent(SDL_Event* event);
	void componentListScrollUp();
	void componentListScrollDown();
	void handleScene();
	void handleComponentList();
	void deleteSceneObject();
	void update(void);
	void save(void);
	void cancel(void);

	string sceneName;
};

#endif
//==============================================================================
